/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package clases;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.regex.Pattern;
import javax.servlet.http.HttpServletResponse;

/**
 *
 * @author ad
 */
/***
 * clase que verificara todo tipo de error sobre todo en login
 * o ingreso de datos 
 */
public class Error_Data {

    /***
     * verificara que los checkbox de la creacion de un nuevo usuario solo
     * se haya seleccionado solo una vez
     * devuelve falso si hay mas de 1 selecciondo
     **/
        public boolean SeleccionRoles_UN(String[] matris) {
        int a=0;
        if(matris[0]==null)
            a++;
        if(matris[1]==null)
            a++;
        if(matris[2]==null)
            a++;
        if(matris[3]==null)
            a++;

        if(a!=3)
            return false;
        else
            return true;

        

    }

        /**
         * veririfica que no tenga caracters no validos como
         * +,;: entre otros
         * devuelve true si tiene caracters extraños
         **/
    public boolean CaracterExtraño(String passwords1) {
        
               if(passwords1!=null)//si es nulo anulado
                    if(passwords1.compareTo("")!=0)//si es vacio anulado
                        {
                         //acepta el intervalo de a-z A-Z _ 0-9 &%$ @
                         if(Pattern.compile("[\\w&%$@]*",Pattern.UNICODE_CASE).matcher(passwords1).matches()==true)
                          {
                           return false;
                          }
                         }

                return true;
    }

        /***
         * mensaje=string que se mostrara con mensaje de exito o no
         * reposse= es el httpservletresonse de nuestra pagina por defuatl el del post
         * ir_A =puede ser regresar en caso de fracaso o continuar en caso de exito
         * pagina la url a donde se va a redireccionar cuando presion continuar o regresar
         *
         * metodo generico para responder mensaje
         **/
     public void MostrarImagen(String img, HttpServletResponse response, String Ir_a,String pagina) throws IOException {
        PrintWriter out = response.getWriter();
        try {
            /* TODO output your page here
             */
            out.println(
                    "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">"
                    + "<html>"
                    + "<head>"
                    + "<title>Banco Central</title>"
                    + "<meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\" />"
                    + "<link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\" />"
                    + "<script type=\"text/javascript\" src=\"js/jquery-1.3.2.min.js\"></script>"
                    + "<script type=\"text/javascript\" src=\"js/script.js\"></script>"
                    + "<script type=\"text/javascript\" src=\"js/cufon-yui.js\"></script>"
                    + "<script type=\"text/javascript\" src=\"js/arial.js\"></script>"
                    + "<script type=\"text/javascript\" src=\"js/cuf_run.js\"></script>"
                    + "<meta http-equiv==\"Pragma\" content=\"no-cache\"/>"
                    + "<meta http-equiv=\"Expires\" content=\"-1\"/>"
                    + "<meta http-equiv==\"Cache-Control\" content=\"no-store\"/>"
                    + "<meta http-equiv=\"Cache\" content=\"no-cache\"/>"
                    + "<script lenguaje=\"JavaScript\">"
                    + "if(window.history.forward(1) != null)"
                    + "   window.history.forward(1);"
                    + "</script>"
                    + "</head>"
                    + "<body>"
                    + "<div class=\"main\">"
                    + "  <div class=\"header\">"
                    + "   <div class=\"header_resize\">"
                    + "    <div class=\"logo\">"
                    + "     <h1><a href=\"index.jsp\"><span>Siempre</span> a su lado</a></h1>"
                    + "   </div>"
                    + "  <div class=\"menu_nav\">"
                    + "   <ul>"
                    + "    <li class=\"active\"><a href=\""+pagina+"\">" + Ir_a + "</a></li>"
                    + " </ul>"
                    + "</div>"
                    + "<div class=\"clr\"></div>"
                    + "<div class=\"hbg\"><img src=\"images/header_images.jpg\" width=\"400\" height=\"275\" alt=\"\" class=\"fl\" />"
                    + " <div class=\"info fl\">"
                    + "  <h3>Banco Central <br />"
                    + "   Uniendo al mundo </h3>"
                    + " </div>"
                    + " <div class=\"clr\"></div>"
                    + "</div>"
                    + "<div class=\"clr\"></div>"
                    + "</div>  </div>"
                    + " <div class=\"content\">"
                    + "  <div class=\"content_resize\">"
                    + " <div class=\"article\">"
                    + "   <center><img src=\"C:/Program Files/Apache Software Foundation/Apache Tomcat 6.0.26/bin/imagenes/"+img+".jpg\" width=\"500\" height=\"300\" alt=\"\" /></center>"
                    + "  <div class=\"clr\"></div>"
                    + "  </div>"
                    + "     <div class=\"sidebar\">"
                    + "    <div class=\"gadget\">"
                    + "     <h2 class=\"star\"><span>Nuestro</span> Menu</h2>"
                    + "    <div class=\"clr\"></div>"
                    + "   <ul class=\"sb_menu\">"
                    + "    <li class=\"active\"><a href=\""+pagina+"\">" + Ir_a + "</a></li>"
                    + "  <br> </br>  "
                    + "</ul></div></div>"
                    + "<div class=\"clr\"></div>"
                    + "</div></div>"
                    + "<div class=\"footer\">"
                    + " <div class=\"footer_resize\">"
                    + "  <p class=\"lf\">&copy; Copyright <a href=\"#\">MyWebSite</a>.</p>"
                    + " <p class=\"rf\">Layout by I <a href=\"http://www.iwebsitetemplate.com/\">Website Templates</a></p>"
                    + "<div class=\"clr\"></div>"
                    + "</div></div></div>"
                    + "</body></html>");
        }catch(Exception xs)
        {
            System.out.println("***********generado en la clase ERROR_DATA metodo EscribirMansaje 4 parametros");
            System.out.println(xs.getMessage());
        }
        finally {
            out.close();
        }
    }

     /****
      * mensaje=texto que se muestra en medio de la pagina
      * Ir_A=mensaje que se muestra puede ser regresar, continuar u otros
      * pagina=es la ruta del hipervinculo
      ***/
     public void EscribirMensajes(String mensaje, HttpServletResponse response, String Ir_a,String pagina) throws IOException {
        PrintWriter out = response.getWriter();
        try {
            /* TODO output your page here
             */
            out.println(
                    "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">"
                    + "<html>"
                    + "<head>"
                    + "<title>Banco Central</title>"
                    + "<meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\" />"
                    + "<link href=\"style.css\" rel=\"stylesheet\" type=\"text/css\" />"
                    + "<script type=\"text/javascript\" src=\"js/jquery-1.3.2.min.js\"></script>"
                    + "<script type=\"text/javascript\" src=\"js/script.js\"></script>"
                    + "<script type=\"text/javascript\" src=\"js/cufon-yui.js\"></script>"
                    + "<script type=\"text/javascript\" src=\"js/arial.js\"></script>"
                    + "<script type=\"text/javascript\" src=\"js/cuf_run.js\"></script>"
                    + "<meta http-equiv==\"Pragma\" content=\"no-cache\"/>"
                    + "<meta http-equiv=\"Expires\" content=\"-1\"/>"
                    + "<meta http-equiv==\"Cache-Control\" content=\"no-store\"/>"
                    + "<meta http-equiv=\"Cache\" content=\"no-cache\"/>"
                    + "<script lenguaje=\"JavaScript\">"
                    + "if(window.history.forward(1) != null)"
                    + "   window.history.forward(1);"
                    + "</script>"
                    + "</head>"
                    + "<body>"
                    + "<div class=\"main\">"
                    + "  <div class=\"header\">"
                    + "   <div class=\"header_resize\">"
                    + "    <div class=\"logo\">"
                    + "     <h1><a href=\"index.jsp\"><span>Siempre</span> a su lado</a></h1>"
                    + "   </div>"
                    + "  <div class=\"menu_nav\">"
                    + "   <ul>"
                    + "    <li class=\"active\"><a href=\""+pagina+"\">" + Ir_a + "</a></li>"
                    + " </ul>"
                    + "</div>"
                    + "<div class=\"clr\"></div>"
                    + "<div class=\"hbg\"><img src=\"images/header_images.jpg\" width=\"400\" height=\"275\" alt=\"\" class=\"fl\" />"
                    + " <div class=\"info fl\">"
                    + "  <h3>Banco Central <br />"
                    + "   Uniendo al mundo </h3>"
                    + " </div>"
                    + " <div class=\"clr\"></div>"
                    + "</div>"
                    + "<div class=\"clr\"></div>"
                    + "</div>  </div>"
                    + " <div class=\"content\">"
                    + "  <div class=\"content_resize\">"
                    + " <div class=\"article\">"
                    + "   <center><h2><span>" + mensaje + "</span></h2></center>"
                    + "  <div class=\"clr\"></div>"
                    + "  </div>"
                    + "     <div class=\"sidebar\">"
                    + "    <div class=\"gadget\">"
                    + "     <h2 class=\"star\"><span>Nuestro</span> Menu</h2>"
                    + "    <div class=\"clr\"></div>"
                    + "   <ul class=\"sb_menu\">"
                    + "    <li class=\"active\"><a href=\""+pagina+"\">" + Ir_a + "</a></li>"
                    + "  <br> </br>  "
                    + "</ul></div></div>"
                    + "<div class=\"clr\"></div>"
                    + "</div></div>"
                    + "<div class=\"footer\">"
                    + " <div class=\"footer_resize\">"
                    + "  <p class=\"lf\">&copy; Copyright <a href=\"#\">MyWebSite</a>.</p>"
                    + " <p class=\"rf\">Layout by I <a href=\"http://www.iwebsitetemplate.com/\">Website Templates</a></p>"
                    + "<div class=\"clr\"></div>"
                    + "</div></div></div>"
                    + "</body></html>");
        }catch(Exception xs)
        {
            System.out.println("***********generado en la clase ERROR_DATA metodo EscribirMansaje 4 parametros");
            System.out.println(xs.getMessage());
        }
        finally {
            out.close();
        }
    }

        /***
         * verificara que solo contenga letras si es asi regresara un true
         * si conitien otro tipo de caracters regresara un false
         **/
    public boolean Solo_Letras(String valor) {
                if(valor!=null)//si es nulo anulado
                    if(valor.compareTo("")!=0)//si es vacio anulado
                        {
                       
                          if(Pattern.compile("[a-zA-Z ]*",Pattern.UNICODE_CASE).matcher(valor).matches()==true)
                          {
                           return true;
                          }
                         }

                return false;
    }

    /***
     * devuleve trues si contiene
     * solo letras,numeros,_,- esoacui eb blanco
     *
     ***/
    public boolean Solo_Letras1(String valor) {
        if(valor!=null)//si es nulo anulado
                    if(valor.compareTo("")!=0)//si es vacio anulado
                        {
                       
                          if(Pattern.compile("[\\w- ]*",Pattern.UNICODE_CASE).matcher(valor).matches()==true)
                          {
                           return true;
                          }
                         }

                return false;
    }

    /***
     * regresar true si contiene solo
     * letras numero arroba punto y guion bajo
     ***/
    public boolean Solo_Letras2(String valor) {
         if(valor!=null)//puede que el cliente no tenga
         {
             if (valor.compareTo("") == 0)
                        return true;//puede venir vacio

                         //acepta el intervalo de a-z A-Z _ 0-9 &%$ @
                         if(Pattern.compile("[\\w_@.]*",Pattern.UNICODE_CASE).matcher(valor).matches()==true)
                          {
                           return true;
                          }
        }
                         
        return false;
    }

    /***
     * metodo que devuelve true si contiene solo numeros + - y espacios en blance
     * de lo contrario regresar false
     ***/
    public boolean Solo_Numeros3(String valor){
     
         if(valor!=null)//si es nulo anulado
         {
                    if(valor.compareTo("")!=0)//si es vacio anulado
                        {
                            valor=valor.replace("-","");
                            valor=valor.replace("+","");
                           if(Pattern.compile("[\\d]*",Pattern.UNICODE_CASE).matcher(valor).matches()==true)
                           {
                            return true;
                           }
                         }
    }

                return false;

    }

    /***
     * verificarar si tiene alguna ruta asignada la foto
     * si tiene devuelve true
     ***/
    public boolean verificar_imagenes(String b) {
       if(b!=null)
           if(b.compareTo("")!=0)
               return true;

       return false;
    }

    /***
     * verificara que true si tiene solo numeros
     * ademas es removido el guion correspondiente al nit
     * y regresa false si contiene letras
     **/
    public boolean verificar_nit(String valor) {

         if(valor!=null)//si es nulo anulado
                    if(valor.compareTo("")!=0)//si es vacio anulado
                        {
                           valor=valor.replace("-","");
                           if(Pattern.compile("[\\d]*",Pattern.UNICODE_CASE).matcher(valor).matches()==true)
                           {
                            return true;
                           }
                         }

                return false;

    }

        public boolean Solo_NumerosDecimales(String valor){

         if(valor!=null)//si es nulo anulado
         {
                    if(valor.compareTo("")!=0)//si es vacio anulado
                        {


                        if(Pattern.compile("[0-9]*[.][0-9]*",Pattern.UNICODE_CASE).matcher(valor).matches()==true)
                           {
                            return true;
                           }
                         }
    }

                return false;

    }



}
